Gaussian noise rejection with directional variance capabilities for use in image processing

ABSTRACT

The noise reduction filter is intensity adaptive and incorporates directional variances of input images.

TECHNICAL FIELD

The technical field of the examples to be disclosed in the following sections relates to the art of image processing and more particularly to the art of noise rejection in digital image processing.

BACKGROUND

Digital images and videos carry noises resulted from a variety of noise sources as image- and video-taking hardware and the following image processing techniques. Gaussian noise, which is a type of noise with a Gaussian amplitude distribution, is one of the major noise components in current digital images and image processing techniques. Specifically, an amount of noise is added to every part of the image. Each pixel in the image is changed from its original value by a small amount. Taking a plot of the amount of distortion of a pixel against the frequency with which it occurs produces a Gaussian distribution of noise.

Image de-noising is a technique to reduce or eliminate noises in images for many purposes, such as aesthetic visual experience and practical applications (i.e. computer imaging). Conventional de-noising techniques, such as spatial noise reduction techniques and temporal noise reduction techniques employ edge-adaptive and motion adaptive algorithms to maintain sharpness of images. However, these existing techniques, including techniques for reducing including Gaussian noise, either fail to maintain high frequency details in textured detailed structures or costly, in addition to the possibility of introducing artificial effects, such as unwanted motion blurring.

SUMMARY

As an example, a method for processing a noise contaminated image having an array of image pixels is disclosed herein. The method comprises: assembling a filter having an array of filtering coefficients, wherein a strength of each coefficient is determined based on a value of an image pixel; and a characteristic of the filter is determined based on a directional variance of the image pixels; and processing the image pixels with the assembled filter.

In another example, a computer-readable medium having a set of computer executable instruction for performing a method for processing a noise contaminated image having an array of image pixels is disclosed, wherein the method comprises: assembling a filter having an array of filtering coefficients, wherein a strength of each coefficient is determined based on a value of an image pixel; and a characteristic of the filter is determined based on a directional variance of the image pixels; and processing the image pixels with the assembled filter.

In yet another example, a device for processing a noise contaminated image having an array of pixel images is disclosed. The device comprises: a filter means having a filtering matrix composed of an array of filtering coefficients, wherein a strength of each coefficient is determined based on a value of an image pixel; and a characteristic of the filter is determined based on a directional variance of the image pixels; and means for processing the image pixels with the assembled filter.

In still yet another example, a device for processing a noise contaminated image having an array of image pixels is disclosed herein. The device comprises: a noise variance unit for estimating a noise floor of the image; a directional variance calculation unit for calculating a set of directional variances of the image; and a filter unit connected to an output of the noise variance estimation unit and an output of the directional variance calculation unit such that an intensity of each filtering coefficient of the filter of the filter unit is determined by a value of the image pixel; and a characteristic of the filter is determined based on the calculated directional variance and the noise floor.

In yet another example, a display system is disclosed herein. The system comprises: an illumination system for providing light; a spatial light modulator having an array of individually addressable pixels for modulating the light based on a set of image data; and a control unit comprising an image processor that comprises a device for processing an input image, wherein the device comprises: a noise variance unit for estimating a noise floor of the image; a directional variance calculation unit for calculating a set of directional variances of the image; and a filter unit connected to an output of the noise variance estimation unit and an output of the directional variance calculation unit such that an intensity of each filtering coefficient of the filter of the filter unit is determined by a value of the image pixel; and a characteristic of the filter is determined based on the calculated directional variance and the noise floor.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a diagram illustrating the Gaussian noise reducing algorithm;

FIG. 2 is a flow chart showing the steps executed for reducing Gaussian noise;

FIG. 3 a and FIG. 3 b show a method of determining a noise floor;

FIG. 4 illustrates a method of calculating directional variances;

FIG. 5 shows images before and after a low noise filtering;

FIG. 6 shows images before and after a medium noise filtering;

FIG. 7 shows images before and after a high noise filtering;

FIG. 8 is a diagram showing an exemplary electronic circuit in which an exemplary method of noise rejection algorithm is implemented; and

FIG. 9 schematically illustrates an exemplary display system in which an exemplary method of noise rejection algorithm is employed.

DETAILED DESCRIPTION OF EXAMPLES OF THE INVENTION

Digital images can be processed using an intensity adaptive and directional variance filter such that texture and detailed spatial structures, especially high frequency details in images and videos can be maintained after filtering. Moreover, motion blurring effects as appeared in processed images with conventional filtering techniques can be avoided. The filter comprises a set of coefficients whose intensities are determined based on the pixel values of the image to be processed; and do not depend upon spatial locations of the image pixels. Characteristics of the filter are based on directional variances. The filter can be in various forms, one of which is a Gaussian filter.

Mathematical Basis

In two dimension, an isotropic (i.e. circularly symmetric) Gaussian function has the form as show in equation 1:

$\begin{matrix} {{G\left( {x,y} \right)} = {\frac{1}{2\; \pi \; \sigma^{2}}^{- \frac{x^{2} + y^{2}}{2\; \sigma^{2}}}}} & \left( {{Eq}.\mspace{14mu} 1} \right) \end{matrix}$

A noise contaminated image can be mathematically expressed as:

I(i,j)=X(i,j)+n(i,j)  (Eq. 2)

wherein I(i,j) represents the contaminated; X(i,j) represents the uncontaminated image; n(i,j) represents noise; and i,j are pixel coordinates. n(i,j) has a Gaussian distribution with zero mean and variance σ_(n) ². The de-noising problem can be interpreted as how to restore X(i,j) from I(i,j). Given the Gaussian distribution property, the total variance σ_(t) ² is the summation of variance σ_(X) ² of the uncontaminated image and variance σ_(n) ² of the noise, as expressed in equation 3.

σ_(t) ²=σ_(X) ²+σ_(n) ²  (Eq. 3)

The noise filtering process can be mathematically expressed as:

X′(i,j)≈X(i,j)=f[I(i,j)]  (Eq. 4)

wherein X(i,j) is the filtered image that is approximately equal to the ideal uncontaminated image X(i,j). f is the transfer function of the filter. In accordance with the invention, coefficients of the transfer function f are intensity adaptive and are determined by the directional variances of the input image, which will be discussed as follows.

Referring to FIG. 1, the algorithm for reducing Gaussian noise in accordance with an example of the invention is illustrated therein. The algorithm comprises noise variance estimation module 78 for estimating noise levels, especially the noise floor of the input image. Directional variance calculation module 80 is designated to calculate variances of the input image. The noise variance and directional noise variance are calculated preferably (though not required) only on the luminance (intensity) component of the input image. The estimated noise variances including the noise floor and the calculated directional noise variances are delivered to intensity adaptive smoothing module 82 to assemble a smoothing filter. The smoothing filter can then be applied to the input image, preferably on both luminance and chrominance components of the input image, to reduce noises therein. As an alternative feature, a temporal smoothing module (83) can be provided following the intensity adaptive smoothing module for temporally smoothing the image.

Noise variance estimation module 78 estimates the variance by finding the minimum variance in an image region. A flow chart showing an exemplary estimation process is illustrated in FIG. 2. Referring to FIG. 2, the estimation process starts from finding an image region that has approximately zero variance, such as sky, wall, and other image regions with substantially mono-features. FIG. 3 a shows an exemplary image with noise contamination. FIG. 3 b shows an exploded image of a portion of the sky region in FIG. 3 a, the region from which the image variance can be estimated. In the image region with substantially zero variance, the total image variance σ_(t) ² is approximately the noise variance σ_(n) ² of the image region, as expressed in equation 5:

σ_(t) ²=σ_(X) ²+σ_(n) ²=0 σ_(n) ²=σ_(n) ²  (Eq. 5)

For calculating the total image variance σ_(t) ² (step 86 in FIG. 2), a 2-dimensional detection window N×N is defined with N being any suitable numbers, such as 3 and 7. In an example of the invention, a 3×3 or 7×7 (e.g. as shown in FIG. 4) detection window is used. A sample variance is calculated for the pixels in the detection window using equation 6; and a set of sample variances are calculated for a set of detection windows covering the selected image region.

$\begin{matrix} {\sigma^{2} = \frac{\sum\left( {x - \mu} \right)^{2}}{\left( {N - 1} \right)}} & \left( {{Eq}.\mspace{14mu} 6} \right) \end{matrix}$

wherein μ is the mean; and N is the total number of discrete values.

The set of sample variances are processed using a maximum filter having a one-column matrix 1×M with M larger than N of the detection window (step 88 in FIG. 2). The maximum filter finds the maximum M values from the input data set. For example, the input date set (e.g. variances) of {1, 2, 3, 4, 5, 6, 7, 8, 9, 10} becomes output data set of the maximum filter of {3, 4, 5, 6, 7, 8, 9, 10, 10, 10}. In accordance with an example of the invention, variances are not calculated for pixel's intensity value is close to the extremes of the dynamic range (a.k.a. contrast ratio) to prevent artificially low sample variances.

Given the calculated variances and maximally filtered variances, the global minimum of all maximally filtered sample variance is set as the noise floor σ_(n) ².

To prevent artificially high sample variances from gradients and/or edges of images features, directional sample variances are calculated for the detection window using equation 6. As an example, a 3×3 detection window with pixel intensity data as:

242 124 116 59 227 5 155 194 209

Directional variance can be calculated along four directions of 0°, 45°, 90°, and 135° as follows. The directional mean values can be calculated as:

0°=μ(59+227+5)/3=97

45°μ=(116+227+155)/3=166

90°μ=(124+227+194)/3=181.7

135°μ=(242+227+209)/3=286.7

The directional variance can be calculated as:

0°σ²=((59−97)²+(227−97)²+(5−97)²)/2=13404

45°σ²=((116−166)²+(227−166)²+(155−166)²)/2=3171

90 °σ²=((124−181.7)²+(227−181.7)²+(194−181.7)²)/2=2766

135°σ²=((242−286.7)²+(227−286.7)²+(209−286.7)²)/2=273

Given the calculated directional variances, directional sample standard deviation σ_(s) that is the square root of the sample variance σ_(s) ² is calculated; and the minimum directional sample standard deviation σ_(min) is identified. All directional sample standard deviations σ_(s) satisfying expression 7 are then identified:

σ_(s)≦α×σ_(min)  (Eq. 7)

wherein α is a pre-determined constant, which can be 1.25. α can be of other values, which are preferably larger than 1. A general form of equation 7 can be expressed as:

σ≦f(σ_(min))

wherein f is a transfer function, which can be of any suitable forms. The total image variance σ_(t) ², as expressed in equation 5, is then calculated from all those directional sample variances σ_(s) ² satisfying equation 7.

With the estimated noise floor σ_(n) ² and sample directional variance σ_(t) ², a Gaussian filter of intensity adaptive smoothing module 82 in FIG. 1 can be determined. Given the fact that a 99.99% confidence interval, which specifies the width of the Gaussian distribution of equation 1, is equal to the sum of the mean μ±3σ, it can be determined that a 99.99% confidence interval for an altered noisy object in the image is equal to μ_(o)±3σ_(t); and a 99.99% confidence interval for an uncontaminated image object is equal to μ_(o) ±3×√{square root over ((σ_(t) ²−σ_(n) ²))}. Accordingly, the Gaussian distribution width can be expressed as ΔW=6σ_(t)−6×√{square root over ((σ_(t) ²−σ_(n) ²))}. The standard deviation σ_(f) ² of the Gaussian filter is set to be proportional to ΔW. The Gaussian filter coefficients s can be defined as:

$\begin{matrix} {s = \frac{^{- \frac{\Delta \; E^{2}}{2\; \sigma_{f}^{2}}}}{\sum ^{- \frac{\Delta \; E^{2}}{2\; \sigma_{f}^{2}}}}} & \left( {{Eq}.\mspace{14mu} 8} \right) \end{matrix}$

wherein ΔE is the difference between intensities of the center pixel and surrounding pixels.

FIG. 5 shows images with low frequency noises before and after the filtering using the invention. FIG. 6 shows images with medium frequency noises before and after the filtering using the invention; and FIG. 7 shows images with high frequency noises before and after the filtering using the invention.

As mentioned earlier with reference to FIG. 1, a temporal smoothing filter 83 can alternatively be included. Coefficients of the temporal filter can be determined by calculating the difference f between current image frame and previously filtered frame. Specifically, the standard deviation of the Gaussian noise σ_(n) ² is calculated from the previously filtered image frame followed by filtering the previously filtered image frame with a low pass filter so as to reduce remaining noises. A recursive filter based on the absolute of f is assembled with the following characteristics: T_(n)=(1−βf)T_(n-1)+βL_(n), wherein β is a constant proportional to the absolute difference f; T_(n) is the current output of the filter; T_(n-1) is the filtered image of the previously filtered image; and L_(n) is the current input image. In an operation when both temporal filter 83 and intensity adaptive smoothing filter 82 (as shown in FIG. 1) are employed, it is preferred that the intensity adaptive smoothing filter 82 is turned on as the difference f increases, where temporal filter effectiveness maybe reduced.

Examples of the above described image processing method can be implemented as a stand-alone software module stored in a computer-readable medium having computer-executable instructions for performing the exemplary methods of the invention. Alternatively, examples of the invention can be implemented in a hardware device, such an electronic device that can be either a stand-alone device or a device embedded in another electronic device or electronic board. FIG. 8 demonstrates an exemplary electronic chip in which an example of the invention is implemented.

Referring to FIG. 8, electronic chip 98 comprises input pins H_(o) to H_(p) for receiving coefficients of the intensity adaptive smoothing filter; image data pin(s) for receiving image data [D_(o) . . . D₇], and control pins for data validity and clock. Processed data is output from pin Output. Alternatively, the electronic chip may provide a number of pins for receiving image data in parallel. The electronic chip can be composed of Filed-Programmable-Gate-Arrays, or ASIC.

Examples of the above described image processing method have many applications, one of which is in display systems. As an example, a display system employing the intensity adaptive filtering of the invention is demonstratively illustrated in FIG. 9. Referring to FIG. 9, display system 100 comprises illumination system 102 for providing illumination light for the system. The illumination light is collected and focused onto spatial light modulator 110 through optics 104. Spatial light modulator 110 that comprises an array of individually addressable pixels, such as micromirror devices, liquid-crystal-cells, liquid-crystal-on-silicon cells, OLED cells, plasma cells or other suitable devices, modulates the illumination light under the control of system controller 106. The modulated light is collected and projected to screen 116 by optics 108.

The system controller is designated for controlling and synchronizing functional elements of the display system. One of the multiple functions of the system controller is receiving input images (or videos) from an image source 118; and processing the input image. Specifically, the system controller may have image processor 90 in which electronic chip as shown in FIG. 5 or other examples of the invention are implemented for performing the noise reduction of the input images according to the invention. The processed images are then delivered to spatial light modulator 110 for reproducing the input images.

It will be appreciated by those of skill in the art that a new and useful noise reduction method has been described herein. In view of the many possible embodiments, however, it should be recognized that the embodiments described herein with respect to the drawing figures are meant to be illustrative only and should not be taken as limiting the scope of what is claimed. Those of skill in the art will recognize that the illustrated embodiments can be modified in arrangement and detail. Therefore, the devices and methods as described herein contemplate all such embodiments as may come within the scope of the following claims and equivalents thereof. 

1. A method for processing a noise contaminated image having an array of image pixels, comprising: providing a filter having an array of filtering coefficients, wherein a strength of each coefficient is determined based on a value of an image pixel; and a characteristic of the filter is determined based on a directional variance of the image pixels; and processing the image pixels with the assembled filter.
 2. The method of claim 1, wherein the filter is a Gaussian filter.
 3. The method of claim 2, wherein a width of a Gaussian distribution function of the Gaussian filter is determined by an estimated total directional variance of the image noise and an estimated noise variance floor.
 4. The method of claim 4, wherein the estimated noise variance floor is obtained by: dividing the image pixel array into a plurality of image pixel sun-arrays with a dimension of N×N; and in each sub-array performing: calculating a directional variance along each of pre-determined set of directions; filtering the calculated directional variances using a maximum filter with a dimension of 1×M, wherein M is greater than N; and identifying the minimum directional variance among the filtered variances; and setting the noise variance floor of the image as the identified minimum directional variance.
 5. The method of claim 4, wherein the total variance of the image is estimated from a procedure comprising: calculating a directional variance along each pre-determined directions; finding the minimum variance among the calculated directional variances; calculating a threshold variance based on the minimum variance; and calculating the total variance from the calculated directional variances that are equal to or less than the threshold.
 6. The method of claim 5, wherein the threshold variance is proportional to the minimum variance.
 7. The method of claim 5, wherein the step of processing the image pixels with the assembled filter comprises: applying the filter to the image pixel array using a standard convolution process.
 8. The method of claim 7, further comprising: smoothing the filtered image using a temporal smoothing filter.
 9. The method of claim 5, wherein the directional variance and the noise floor are calculated from a luminance component of the image pixels.
 10. A computer-readable medium having a set of computer executable instruction for performing a method for processing a noise contaminated image having an array of image pixels, wherein the method comprises: processing the image pixels with the assembled filter, the filter having an array of filtering coefficients, wherein a strength of each coefficient is determined based on a value of an image pixel; and a characteristic of the filter is determined based on a directional variance of the image pixels
 11. A device for processing a noise contaminated image having an array of image pixels, the device comprising: a noise variance unit for estimating a noise floor of the image; a directional variance calculation unit for calculating a set of directional variances of the image; and a filter unit connected to an output of the noise variance estimation unit and an output of the directional variance calculation unit such that an intensity of each filtering coefficient of the filter of the filter unit is determined by a value of the image pixel; and a characteristic of the filter is determined based on the calculated directional variance and the noise floor.
 12. The device of claim 11, wherein the filter of the filter unit is a Gaussian filter.
 13. The device of claim 12, wherein a width of a Gaussian distribution function of the Gaussian filter is determined by an estimated total directional variance of the image noise and an estimated noise variance floor.
 14. The device of claim 13, wherein the estimated noise variance floor is the minimum of a set of directional variances calculated from a plurality of image pixel sub-arrays with a dimension of N×N.
 15. The device of claim 14, wherein the total variance of the image is a variance of a set of directional variances above a threshold, wherein the threshold is associated with the minimum variance
 16. The device of claim 15, wherein the threshold variance is proportional to the minimum variance.
 17. The device of claim 14, further comprising: a smoothing filter for smoothing the image using a temporal smoothing filter.
 18. The device of claim 13, wherein the noise variance estimation unit and directional variance calculation unit are connected to a luminance channel of the image pixels.
 19. The device of claim 13 is a field-programmable-gate-array circuit or an application-specific-integrated-circuit.
 20. A display system, comprising: an illumination system for providing light; a spatial light modulator having an array of individually addressable pixels for modulating the light based on a set of image data; and a control unit comprising an image processor that comprises a device for processing an input image, wherein the device comprises: a noise variance unit for estimating a noise floor of the image; a directional variance calculation unit for calculating a set of directional variances of the image; and a filter unit connected to an output of the noise variance estimation unit and an output of the directional variance calculation unit such that an intensity of each filtering coefficient of the filter of the filter unit is determined by a value of the image pixel; and a characteristic of the filter is determined based on the calculated directional variance and the noise floor.
 21. The system of claim 38, further comprising: a data converter for transforming the filtered image into the set of image data. 